package day06;

import java.util.Random;

//方法的演示
public class MethodDemo {

    public static void main(String[] args) {
        say();//调用say()方法
        say("WKJ");
        say("WKJ",40);
        say("WKJ",30);
        int a = sum(5,6);
        System.out.println(a);
        int m=5,n=6;
        int b = sum(m,n);
        System.out.println(b);

        int [] arr =generateArray(5,10);//模拟第一个人的访问
        System.out.println("数组的长度:"+arr.length);//模拟对返回值的后续操作
        for(int i=0;i<arr.length;i++){//模拟对返回值的后续操作
            System.out.println(arr[i]);
        }

        int [] arr1 =generateArray(5,10);//模拟第二个人的访问
        System.out.println("第一个元素的值:"+arr1[0]);//模拟对返回值的后续操作
        for(int i=0;i<arr1.length;i++){//模拟对返回值的后续操作
            System.out.println(arr1[i]);
        }
    }
    //无参数无返回值
    public static void say(){
        System.out.println("大家好,我叫WKJ,今年40岁了");
    }
    //有参数无返回值
    public static void say(String name){
        System.out.println("大家好，我叫"+name+",今年40岁了");
    }
    //有参无返回值
    public static void say(String name,int age){
        if (age>=60){//在某种特定条件下,提前结束方法
            return;//结束方法
        }
        System.out.println("大家好,我叫"+name+",今年"+age+"岁了");
    }
    public static void say(int age){}//正确的重载
    public static void say(int age,String name){}//正确的重载
//    public static int say(){return 1;}//编译报错，重载与返回值类型无关
//    public static void say(String address){}//编译报错,重载与参数名称无关
    //有参数有返回值
    public static int sum(int num1,int num2){
        int num;
        num=num1+num2;
        return num;
    }
    //生成一个整形数组,并存储随机数据
    public static int[] generateArray(int len,int max){
        Random rand = new Random();
        int [] arr = new int[len];
        for(int i=0;i<arr.length;i++){
            arr[i]=rand.nextInt(max+1);
        }
        return arr;
    }

}
